*|> !MultiFS.!Help (details about the MultiFS v1.23)
-----------------------------------------------------------------------------

This is a MSDOS only version of MultiFS.

-----------------------------------------------------------------------------

   o   Bugs in "Copy system" fixed. The old module failed to copy the last
       CLUSTER of each file on the disc. It also failed to copy the first
       8 CLUSTERs on the disc (which usually meant that the SYSTEM files
       had garbage at the start, aswell as garbage at the end). The last
       CLUSTER not being copied was introduced during other MultiFS work,
       and did work correctly, once. The 8 CLUSTERs being skipped was a
       silly, and obviously the SYSTEM discs I used when first testing
       "Copy system" didn't have any of the SYSTEM files in the first 8
       CLUSTERs.

   o   Report on "Floppies not being formatted correctly". Only discs
       containing a valid BOOT BLOCK and SYSTEM files can be used to
       boot-strap a MS-DOS system. The MS-DOS format program places a
       BOOT BLOCK capable of boot-strapping the system on all discs,
       only copying the SYSTEM files onto discs when a format with "/S"
       is used. MultiFS by default does NOT have a valid BOOT BLOCK copy.
       If "Copy system" has been used, then discs formatted using MultiFS
       will always contain the BOOT BLOCK copied from the original disc.
       Only when a SYSTEM format is specified will the SYSTEM files be
       copied onto the disc. Before "Copy system" is used, MultiFS can only
       place the standard information into the BOOT BLOCK. This means that
       the disc cannot be used to boot-strap MS-DOS without being
       re-formatted. However, the disc should still be useable on a
       executing MS-DOS system.

   o   Fix "!Run" Shared C Library loading as requested by JAllin.

   o   Attempting to create a directory called "BAT/" now generates an
       invalid directory name error. However, if there is a pseudo-directory
       "BAT/" present then no error will be generated. This is due to the
       way the RISC OS filer checks a directory, before performing the
       operation and not complaining if the directory already exists.

   o   Creation of zero length files no longer causes "CHKDSK" error. The
       problem was that zero length files created by MultiFS had a start
       CLUSTER of &FFF (which is a valid end of CLUSTER chain value) in the
       directory entry, MS-DOS zero length files have a start CLUSTER of
       &000.

   o   Copying from named hard-disc to un-named one didn't copy anything.
       The problem was caused by a piece of code executed when accessing
       discs without names using the last disc seen information, ignoring
       the drive specifier given in the pathname.

   o   Failing to work on 1MByte machines. Of all things, INCREASING the
       initial wimp slot size (from 32K to 64K) made the problem go away.
       I believe the error was being generated by a failed stack extension
       call. I do not know why the program executed correctly with a 32K
       wimp slot on larger memory machines. Once the application has been
       started, the system will allocate more wimp memory as necessary.
       Currently this leaves the memory allocation as 72K on a 1MB machine
       (8K pages) and 96K on a 4MB machine (32K pages).

-----------------------------------------------------------------------------

   o   Renaming "DIR/EXT" to "DIR" now works.

   o   "File open" error message when accessing winchester partition changed
       to "Hard disc file "filename" in use by another application", where
       "filename" is suitable filled in by the full pathname of the hard
       disc image we were attempting to access.

   o   "Erase RISC OS" seems to work perfectly for me under RISC OS 2.00.
       If, however, I am using the latest FileSwitch, FileCore and ADFS
       setup I get the error "too many open files" after the desktop has
       been left (and the MultiFS module removed) from the startup sequence
       for the PCEmulator.

   o   Fixed out-standing corruption problem. This was the problem to do
       with a disc description structure being lost (free'ed) sometime
       over a large number of operations.

   o   Created a file in "!Edit". Saved it as "AUTO/BAT" to an MS-DOS
       winchester partition (so it will be named "AUTO.BAT"). Switched
       to hierarchical naming, entered "BAT/" and renamed "AUTO" as
       "AUTOEXEC". Switched to full-naming. Edited "AUTOEXEC/BAT" and
       re-saved. The "AUTOEXEC.BAT" file is executed correctly when
       starting up the PCEmulator, and "CHKDSK" does not complain.
       The "Probable non-DOS disk" error was due to FAT entry 0 (which
       is not used by MS-DOS, being written).

-----------------------------------------------------------------------------

   o   No name truncation and Ecolink options added to Filer menu.

       If full names are used when attempting to copy from MultiFS to
       ADFS (or some other 10character restricted RISC OS filing system)
       then the simple error "Bad name" is generated. MultiFS has no
       direct control over this message (since it is being generated by
       ADFS).

       Filer windows already open are NOT updated if a new display format
       is selected. The user needs to close and then re-open the window.
       This is due to the fact that the MultiFS module does NOT know which
       directories the system Filer has open. A possible solution would
       simply be to close all the open windows if the display format is
       changed.

       NOTEs: Since it is possible to present the names in non-truncated
              form, the filer will attempt to display the full information.
              This leads to funny Filer windows, and results when using
              certain Filer menu options.

              When in hierarchical mode, certain operations will only act
              on the filename section (e.g. rename). The extension
              directories cannot be renamed, since they are "pseudo"
              directories that reflect the current extensions provided in a
              particular MS-DOS directory.

   o   Creating a directory (or file) no longer loses a CLUSTER.

   o   Discover that the CHKDSK is more stringent about valid terminating
       CLUSTER numbers than some MS-DOS documentation I have. Up until now
       I have been using 0xFF8 as a CLUSTER terminator. MS-DOS seems to use
       0xFFF as standard, and CHKDSK complains about invalid CLUSTER
       numbers if any other terminator is used. The documentation I have
       claims that 0xFF8->0xFFF can be used as valid terminators.

   o   "*EX" modified to NOT print the directory size information.
       Note: The information will still be printed if RISC OS 2.5 is used
             (since the latest FileSwitch does not use the MultiFS *EX
              command, but provides its own standard implementation).

   o   Renaming a directory from "FRED" to "FRED.TXT" now works.
       NOTEs: The RISC OS 2.00 system Filer limits the new filename to
              10 characters in the rename writable icon. This is not
              enough to specify the full extension if more than 6 characters
              of filename exist.
              If a non-hierarchical naming scheme is selected then the
              translated directory seperator character "/" should be used
              where the MS-DOS "." seperator is required.

   o   Will complain if name translation would result in illegal MS-DOS
       filenames. eg.
         "FRED//" (since "/" is translated to the MS-DOS file extension
         seperator character).
         "FRED/FRED" (since this would give a file extension longer than
         3 characters (the MS-DOS limit)).

-----------------------------------------------------------------------------

   o   Module now removed (*RMKilled) by any QUIT selection. This includes
       the Wimp QUIT Message (as required by the PCEmS Clear RISC OS option).

-----------------------------------------------------------------------------

   o   Now works with RISC OS 2.5 (ADFS, FileCore and FileSwitch)

-----------------------------------------------------------------------------

   o   "Format" help string no longer mentions "Atari" discs

   o   Selected "Quit" from the menu will close all the open MultiFS windows
       before removing the icon from the icon-bar and KILLing the module.
       The module will NOT be killed if the switcher filer quit is selected
       (this is deliberate) and if the desktop is left (using the switcher
       exit) (this is also deliberate).

   o   It is now possible to perform ADFS/MultiFS copies in either direction
       on a single floppy machine.

-----------------------------------------------------------------------------

Supported formats:
          Double-Sided MS-DOS floppies  (720K)
          Single-Sided MS-DOS floppies  (360K)
          Archimedes PC-Emulator winchester partitions
          Double-Sided Atari ST floppies (720K) -- not mentioned
          Single-Sided Atari ST floppies (360K) -- not mentioned

-----------------------------------------------------------------------------

Accessing winchester partitions
-------------------------------
The MultiFS module now supports upto four (4) winchester partitions. The
module will look for the following system variables:

        <PCe$Drive_C>   first winchester partition
        <PCe$Drive_D>   second winchester partition
        <PCe$Drive_E>   third winchester partition
        <PCe$Drive_F>   fourth winchester partition

If any of the variables exist then the "string" contents are taken to be
the full path-names of the desired partition files. NOTE: <PCe$Drive_C>
must exist for <PCe$Drive_D> to be accessed, also <PCe$Drive_D> must exist
for <PCe$Drive_E> to be used and <PCe$Drive_E> must exist for <PCe$Drive_F>
to be used.

These variables have fixed names ("C".."F") even though the drives may
appear as different names when used through the filesystem. The actual
drive letters used when accessing the filesystem will be shifted up if
more than two floppy drives are available.

-----------------------------------------------------------------------------

Peculiarities:
        ADFS filenames are truncated to 8characters when copied onto a
        DOS disc. This is required because MultiFS inserts a
        filename/extension character into DOS names when presenting them
        to the user. If the full 10 character ADFS name was written to the
        DOS directory, it would be read back with this padding character.
        Thus: ADFS names are truncated to 8characters. A filename/extension
        seperator is provided for DOS names.

        The RISC OS filetype of an object is preserved on the DOS media
        seperate to any information encoded in the DOS file-extension
        characters. The system used works with both MSDOS3.21 and DRDOS5.0.

        Access attributes. Since there is not a complete mapping between
        RISC OS style attributes and those provided by DOS, the
        most suitable path is taken:

          o Always public and private read.

          o If NOT DOS read only then public and private write.

          o There is NO lock bit under DOS.
            (This should possibly be the system bit for reading
             only (since writing it will hide the file from DOS).

-----------------------------------------------------------------------------

The module is stand-alone apart from its "sprite" and "template" requirements.
It expects the following sprites to be present in the desktop sprite pool:

        "file_fe4"              MSDOS file
        "mfsfloppy"             iconbar floppy icon
        "mfswini"               iconbar winchester icon

Eventually these sprites will be bound with the Module image. They are
currently provided in the file "<MultiFS$Dir>.!Sprites". This is
automatically loaded by the Wimp when it first sees the "!MultiFS"
application. If the module is being loaded directly then an "iconsprites"
command should be used to load "!Sprites" before the module is loaded.

The template file contains the single window definition for the information
box. Since this is the only window we require, it will eventually be built
at run-time.

-----------------------------------------------------------------------------

MultiFS currently only allows access to a "bootable" MS-DOS partition on
the emulated harddisks (ie. those registered with "FDISK"). This partition
cannot be greater than 30MBytes long. If the error:
"DOS disc does NOT have 512byte sectors"
is given, then the winchester partition was not created correctly. See the
documentation and initialisation programs/scripts supplied with the PC
Emulator.

-----------------------------------------------------------------------------

The version provides the following OSCLI commands:
    DeskTop_MultiFSFiler      Starts the MultiFS RISC OS DeskTop filer
    MultiFS                   Selects MultiFS as the current filing system
    DOSMap                    Provide MSDOS .ext to RISC OS filetype mapping
*   Format                    Format a DOS disc
*   Free                      Displays free and used byte counts
*   NameDisc                  Set the DOS volume directory entry
    NameDisk                  Set the DOS volume directory entry
*   Dismount                  Forget this disc (close all Filer windows)
*   Verify                    Verify a formatted DOS disc
    Map                       Provide FAT information about the floppy

Entries marked "*" also appear on the Filer menu. The following extra
functions are also provided by the Filer (via the icon-bar menu):
    Copy System                 Copy the "SYSTEM FILES" of the current disc.

"Copy System" is used to take a copy of the BOOT block and copyrighted files
(hence illegal to distribute) of the current disc. The BOOT block is copied
into a file named "BootBlock" in the !MultiFS application. The system files
are copied into a file named "System" in the !MultiFS application directory.
During MultiFS initialisation it will load the "BootBlock" if present. When a
format of a DOS disc has completed, the Filer will copy this loaded data onto
the BOOT Block of the newly formatted disc. If a SYSTEM format is specified
the code will then write the "System" files onto the disc. This is to allow
the user to construct true DOS discs with whatever version of DOS they may be
using. The disadvantage of this is that the user must initially format a DOS
disc on another system where they have a suitable DOS license. Note: to
prevent accidental over-writing of this information the user should set the
LOCKED bit on the files after copying.

-----------------------------------------------------------------------------

DOS Discs formatted under MultiFS automatically have a volume label. This is
of the form "HHMMYYMODD" where:

   HH = 00..23 (hours)
   MM = 00..59 (minutes)
   YY = 00..99 (year in current century)
   MO = 01..12 (month)
   DD = 01..31 (day)

This should provide an unique disc identity for every format (which should
always take longer than a minute). This is then used to provide a disc
accessing style similar to that provided by ADFS and ADFSFiler.

Disc names (volumes) cannot be created with SPACEs. Certain DOS formats
allow disc names with spaces. MultiFS will ignore any text after (and
including) the first space encountered. The name must be greater than 1
character long.

-----------------------------------------------------------------------------

The drives are "named" according to the number of floppies present:

        o  1 floppy        :A           1st winchester  :C
        o  2 floppies      :A :B        1st winchester  :C
        o  3 floppies      :A :B :C     1st winchester  :D
        o  4 floppies      :A :B :C :D  1st winchester  :E

-----------------------------------------------------------------------------

Outstanding operations:
        Filename/Pathname parsing does NOT understand the special RISC OS
        characters (ie. "^", "@", "&" and "%"). This is not required for use
        under the RISC OS Filer, or the latest FileSwitch modules.

        Verify only understands double-sided (720K) DOS discs at the moment.
        This needs to be extended for all supported formats.

-----------------------------------------------------------------------------
*|> Done
